package org.rsbot.script.wrappers;

import java.util.EnumSet;
import org.rsbot.script.methods.MethodContext;
import org.rsbot.script.methods.MethodProvider;

public abstract class RSPath extends MethodProvider
{
  public RSPath(MethodContext paramMethodContext)
  {
    super(paramMethodContext);
  }

  public abstract boolean traverse(EnumSet<TraversalOption> paramEnumSet);

  public boolean traverse()
  {
    return traverse(EnumSet.of(TraversalOption.HANDLE_RUN, TraversalOption.SPACE_ACTIONS));
  }

  public abstract boolean isValid();

  public abstract RSTile getNext();

  public abstract RSTile getStart();

  public abstract RSTile getEnd();

  public static enum TraversalOption
  {
    HANDLE_RUN, SPACE_ACTIONS;
  }
}